
export const useHttp = () => {
  const BASE_URL = 'https://top.yfwnm.com/uni.php/'
  /**
   * GET请求封装
   */
  function get(url: string, data = {}) {
    return request(url, 'GET', data)
  }

  /**
   * POST请求封装
   */
  function post(url: string, data = {}) {
    return request(url, 'POST', data)
  }
  /**
   * @description 上传文件
   * @param {*} url 请求地址
   * @param {*} data 参数
   */
  // function upLoad(url: any, headers = {}, data = {}) {
  // 	return uploadFile(url, 'POST', headers, data)
  // }

  /**
   */
  function request(url: string, method = "GET", data = {}) {
    const contentType = method == 'GET' ? 'application/json' : 'application/x-www-form-urlencoded'
    uni.showLoading({
      title: '努力加载中'
    })
    return new Promise(function (resolve, reject) {
      uni.request({
        url: BASE_URL + url,
        data: data,
        method: method as any,
        header: {
          'content-Type': contentType,
          // 'unionid': uni.getStorageSync('user_unionid'),
          // 'openid': uni.getStorageSync('user_openid'),
        },
        success: function (res: any) {
          uni.hideLoading()
          console.log('res', res);

          const { statusCode, data } = res

          if (statusCode == 200) {
            resolve(data)
          } else {
            uni.showModal({
              title: '提示',
              content: data.msg || '网络错误'
            })
            reject(data)
          }

        },
        fail: function (err) {
          //服务器连接异常
          uni.hideLoading()
          reject(err + "服务器连接异常，请检查网络再试")
        }
      })
    }) as any
  }


  return {
    get,
    post
  }
  /**
   * 微信的uploadFile
   */
  // function uploadFile(url: any, method = "POST", data = {}) {
  // 	return new Promise(function (resolve, reject) {
  // 		uni.uploadFile({
  // 			url: develop.BASE_URL + url,
  // 			filePath: data.filePath,
  // 			file: data.filePath,
  // 			name: 'file',
  // 			header: {
  // 				'token': uni.getStorageSync('token'),
  // 			},
  // 			formData: {
  // 				"userNo": uni.getStorageSync('userno'),
  // 				"organId": uni.getStorageSync('organId'),
  // 			},
  // 			success: function (res: { statusCode: number; data: unknown }) {
  // 				// console.log(res)
  // 				if (res.statusCode == 200) {
  // 					resolve(res.data);
  // 					// try {
  // 					//   var resString = res.data
  // 					//   var res = JSON.parse(resString);
  // 					//   var data = res.data;
  // 					//   console.log(res.code);
  // 					//   console.log(1);
  // 					//   switch (res.code) {
  // 					// 	case 20000: // 请求成功处理
  // 					// 	  resolve(data);
  // 					// 	  break;
  // 					// 	  // case 20001: //参数为空
  // 					// 	  // case 20002: //数据验证错误
  // 					// 	  // case 20005: //没有可用的数据库
  // 					// 	  // case 20006: //该用户未登录
  // 					// 	  // case 20007: //上传视频不存在
  // 					// 	  // case 20008: //请确认文件完整性
  // 					// 	  // case 20009: //程序异常
  // 					// 	case 20003: // 20003 //您没有权限访问，请获取系统权限
  // 					// 	case 20004: // 20004 权限失效或token过期
  // 					// 	  uni.removeStorageSync('token')
  // 					// 	  uni.removeStorageSync('userno')
  // 					// 	  uni.navigateTo({
  // 					// 		url: '/pages/login/login',
  // 					// 	  })
  // 					// 	  reject(data)
  // 					// 	  break;
  // 					// 	default:
  // 					// 	  reject(data)
  // 					// 	  break;
  // 					//   }
  // 					// } catch (error) {
  // 					//   reject("数据获取失败")
  // 					// }
  // 				} else {
  // 					reject("请求失败：" + res)
  // 				}
  // 			},
  // 			fail: function (err: any) {
  // 				//服务器连接异常
  // 				reject(err + "服务器连接异常，请检查网络再试")
  // 			}
  // 		})
  // 	});
  // }
}




